/**
 * output package name
 */
package com.kingdee.eas.custom.hr.attendance.client;

import org.apache.log4j.*;

import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.border.*;
import javax.swing.BorderFactory;
import javax.swing.event.*;
import javax.swing.KeyStroke;

import com.kingdee.bos.ctrl.swing.*;
import com.kingdee.bos.ctrl.kdf.table.*;
import com.kingdee.bos.ctrl.kdf.data.event.*;
import com.kingdee.bos.dao.*;
import com.kingdee.bos.dao.query.*;
import com.kingdee.bos.metadata.*;
import com.kingdee.bos.metadata.entity.*;
import com.kingdee.bos.ui.face.*;
import com.kingdee.bos.ui.util.ResourceBundleHelper;
import com.kingdee.bos.util.BOSUuid;
import com.kingdee.bos.service.ServiceContext;
import com.kingdee.jdbc.rowset.IRowSet;
import com.kingdee.util.enums.EnumUtils;
import com.kingdee.bos.ui.face.UIRuleUtil;
import com.kingdee.bos.ctrl.swing.event.*;
import com.kingdee.bos.ctrl.kdf.table.event.*;
import com.kingdee.bos.ctrl.extendcontrols.*;
import com.kingdee.bos.ctrl.kdf.util.render.*;
import com.kingdee.bos.ui.face.IItemAction;
import com.kingdee.eas.framework.batchHandler.RequestContext;
import com.kingdee.bos.ui.util.IUIActionPostman;
import com.kingdee.bos.appframework.client.servicebinding.ActionProxyFactory;
import com.kingdee.bos.appframework.uistatemanage.ActionStateConst;
import com.kingdee.bos.appframework.validator.ValidateHelper;
import com.kingdee.bos.appframework.uip.UINavigator;


/**
 * output class name
 */
public abstract class AbstractShiftRulePanelUI extends com.kingdee.eas.base.commonquery.client.CustomerQueryPanel
{
    private static final Logger logger = CoreUIObject.getLogger(AbstractShiftRulePanelUI.class);
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer1;
    protected com.kingdee.bos.ctrl.swing.KDLabel kDLabel1;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer2;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer3;
    protected com.kingdee.bos.ctrl.kdf.table.KDTable kdtEntrys;
    protected com.kingdee.bos.ctrl.swing.KDCheckBox isWeek;
    protected com.kingdee.bos.ctrl.swing.KDCheckBox isHoliday;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer4;
    protected com.kingdee.bos.ctrl.swing.KDButton btnAdd;
    protected com.kingdee.bos.ctrl.swing.KDButton btnDel;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer5;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer6;
    protected com.kingdee.bos.ctrl.swing.KDCheckBox chkSpecify;
    protected com.kingdee.bos.ctrl.swing.KDComboBox cboGroup;
    protected com.kingdee.bos.ctrl.swing.KDComboBox cboZone;
    protected com.kingdee.bos.ctrl.swing.KDNumberTextField txtDays;
    protected com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox prmtCalendar;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker pkFrom;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker pkTo;
    /**
     * output class constructor
     */
    public AbstractShiftRulePanelUI() throws Exception
    {
        super();
        jbInit();
        
        initUIP();
    }

    /**
     * output jbInit method
     */
    private void jbInit() throws Exception
    {
        this.resHelper = new ResourceBundleHelper(AbstractShiftRulePanelUI.class.getName());
        this.setUITitle(resHelper.getString("this.title"));
        this.kDLabelContainer1 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabel1 = new com.kingdee.bos.ctrl.swing.KDLabel();
        this.kDLabelContainer2 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabelContainer3 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kdtEntrys = new com.kingdee.bos.ctrl.kdf.table.KDTable();
        this.isWeek = new com.kingdee.bos.ctrl.swing.KDCheckBox();
        this.isHoliday = new com.kingdee.bos.ctrl.swing.KDCheckBox();
        this.kDLabelContainer4 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.btnAdd = new com.kingdee.bos.ctrl.swing.KDButton();
        this.btnDel = new com.kingdee.bos.ctrl.swing.KDButton();
        this.kDLabelContainer5 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabelContainer6 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.chkSpecify = new com.kingdee.bos.ctrl.swing.KDCheckBox();
        this.cboGroup = new com.kingdee.bos.ctrl.swing.KDComboBox();
        this.cboZone = new com.kingdee.bos.ctrl.swing.KDComboBox();
        this.txtDays = new com.kingdee.bos.ctrl.swing.KDNumberTextField();
        this.prmtCalendar = new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();
        this.pkFrom = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.pkTo = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.kDLabelContainer1.setName("kDLabelContainer1");
        this.kDLabel1.setName("kDLabel1");
        this.kDLabelContainer2.setName("kDLabelContainer2");
        this.kDLabelContainer3.setName("kDLabelContainer3");
        this.kdtEntrys.setName("kdtEntrys");
        this.isWeek.setName("isWeek");
        this.isHoliday.setName("isHoliday");
        this.kDLabelContainer4.setName("kDLabelContainer4");
        this.btnAdd.setName("btnAdd");
        this.btnDel.setName("btnDel");
        this.kDLabelContainer5.setName("kDLabelContainer5");
        this.kDLabelContainer6.setName("kDLabelContainer6");
        this.chkSpecify.setName("chkSpecify");
        this.cboGroup.setName("cboGroup");
        this.cboZone.setName("cboZone");
        this.txtDays.setName("txtDays");
        this.prmtCalendar.setName("prmtCalendar");
        this.pkFrom.setName("pkFrom");
        this.pkTo.setName("pkTo");
        // CustomerQueryPanel
        // kDLabelContainer1		
        this.kDLabelContainer1.setBoundLabelText(resHelper.getString("kDLabelContainer1.boundLabelText"));		
        this.kDLabelContainer1.setBoundLabelUnderline(true);		
        this.kDLabelContainer1.setBoundLabelLength(50);
        // kDLabel1		
        this.kDLabel1.setText(resHelper.getString("kDLabel1.text"));
        // kDLabelContainer2		
        this.kDLabelContainer2.setBoundLabelText(resHelper.getString("kDLabelContainer2.boundLabelText"));		
        this.kDLabelContainer2.setBoundLabelUnderline(true);		
        this.kDLabelContainer2.setBoundLabelLength(80);
        // kDLabelContainer3		
        this.kDLabelContainer3.setBoundLabelText(resHelper.getString("kDLabelContainer3.boundLabelText"));		
        this.kDLabelContainer3.setBoundLabelUnderline(true);		
        this.kDLabelContainer3.setBoundLabelLength(50);
        // kdtEntrys
		String kdtEntrysStrXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><DocRoot xmlns:c=\"http://www.kingdee.com/Common\" xmlns:f=\"http://www.kingdee.com/Form\" xmlns:t=\"http://www.kingdee.com/Table\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.kingdee.com/KDF KDFSchema.xsd\" version=\"0.0\"><Styles><c:Style id=\"sCol0\"><c:Protection hidden=\"true\" /></c:Style></Styles><Table id=\"KDTable\"><t:Sheet name=\"sheet1\"><t:Table t:selectMode=\"15\" t:mergeMode=\"0\" t:dataRequestMode=\"0\" t:pageRowCount=\"100\"><t:ColumnGroup><t:Column t:key=\"zone\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" t:styleID=\"sCol0\" /><t:Column t:key=\"zoneCode\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" /><t:Column t:key=\"zoneName\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" /><t:Column t:key=\"days\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" /></t:ColumnGroup><t:Head><t:Row t:name=\"header1\" t:height=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\"><t:Cell>$Resource{zone}</t:Cell><t:Cell>$Resource{zoneCode}</t:Cell><t:Cell>$Resource{zoneName}</t:Cell><t:Cell>$Resource{days}</t:Cell></t:Row></t:Head></t:Table><t:SheetOptions><t:MergeBlocks><t:Head /></t:MergeBlocks></t:SheetOptions></t:Sheet></Table></DocRoot>";
		
        this.kdtEntrys.setFormatXml(resHelper.translateString("kdtEntrys",kdtEntrysStrXML));

        

        // isWeek		
        this.isWeek.setText(resHelper.getString("isWeek.text"));
        // isHoliday		
        this.isHoliday.setText(resHelper.getString("isHoliday.text"));
        // kDLabelContainer4		
        this.kDLabelContainer4.setBoundLabelText(resHelper.getString("kDLabelContainer4.boundLabelText"));		
        this.kDLabelContainer4.setBoundLabelUnderline(true);		
        this.kDLabelContainer4.setBoundLabelLength(80);
        // btnAdd		
        this.btnAdd.setText(resHelper.getString("btnAdd.text"));
        this.btnAdd.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent e) {
                beforeActionPerformed(e);
                try {
                    btnAdd_actionPerformed(e);
                } catch (Exception exc) {
                    handUIException(exc);
                } finally {
                    afterActionPerformed(e);
                }
            }
        });
        // btnDel		
        this.btnDel.setText(resHelper.getString("btnDel.text"));
        this.btnDel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent e) {
                beforeActionPerformed(e);
                try {
                    btnDel_actionPerformed(e);
                } catch (Exception exc) {
                    handUIException(exc);
                } finally {
                    afterActionPerformed(e);
                }
            }
        });
        // kDLabelContainer5		
        this.kDLabelContainer5.setBoundLabelText(resHelper.getString("kDLabelContainer5.boundLabelText"));		
        this.kDLabelContainer5.setBoundLabelUnderline(true);		
        this.kDLabelContainer5.setBoundLabelLength(80);
        // kDLabelContainer6		
        this.kDLabelContainer6.setBoundLabelText(resHelper.getString("kDLabelContainer6.boundLabelText"));		
        this.kDLabelContainer6.setBoundLabelLength(80);		
        this.kDLabelContainer6.setBoundLabelUnderline(true);
        // chkSpecify		
        this.chkSpecify.setText(resHelper.getString("chkSpecify.text"));
        // cboGroup
        // cboZone
        // txtDays
        // prmtCalendar		
        this.prmtCalendar.setQueryInfo("com.kingdee.eas.custom.hr.attendance.app.WorkCalendarQuery");		
        this.prmtCalendar.setDisplayFormat("$name$");		
        this.prmtCalendar.setEditFormat("$number$");		
        this.prmtCalendar.setCommitFormat("$number$");		
        this.prmtCalendar.setRequired(true);
        // pkFrom
        // pkTo
		//Register control's property binding
		registerBindings();
		registerUIState();


    }

	public com.kingdee.bos.ctrl.swing.KDToolBar[] getUIMultiToolBar(){
		java.util.List list = new java.util.ArrayList();
		com.kingdee.bos.ctrl.swing.KDToolBar[] bars = super.getUIMultiToolBar();
		if (bars != null) {
			list.addAll(java.util.Arrays.asList(bars));
		}
		return (com.kingdee.bos.ctrl.swing.KDToolBar[])list.toArray(new com.kingdee.bos.ctrl.swing.KDToolBar[list.size()]);
	}




    /**
     * output initUIContentLayout method
     */
    public void initUIContentLayout()
    {
        this.setBounds(new Rectangle(10, 10, 510, 320));
        this.setLayout(null);
        kDLabelContainer1.setBounds(new Rectangle(10, 10, 150, 19));
        this.add(kDLabelContainer1, null);
        kDLabel1.setBounds(new Rectangle(11, 41, 100, 19));
        this.add(kDLabel1, null);
        kDLabelContainer2.setBounds(new Rectangle(11, 68, 203, 19));
        this.add(kDLabelContainer2, null);
        kDLabelContainer3.setBounds(new Rectangle(229, 68, 106, 19));
        this.add(kDLabelContainer3, null);
        kdtEntrys.setBounds(new Rectangle(11, 97, 485, 100));
        this.add(kdtEntrys, null);
        isWeek.setBounds(new Rectangle(11, 207, 162, 19));
        this.add(isWeek, null);
        isHoliday.setBounds(new Rectangle(193, 207, 129, 19));
        this.add(isHoliday, null);
        kDLabelContainer4.setBounds(new Rectangle(11, 232, 240, 19));
        this.add(kDLabelContainer4, null);
        btnAdd.setBounds(new Rectangle(345, 68, 73, 21));
        this.add(btnAdd, null);
        btnDel.setBounds(new Rectangle(427, 68, 73, 21));
        this.add(btnDel, null);
        kDLabelContainer5.setBounds(new Rectangle(11, 262, 200, 19));
        this.add(kDLabelContainer5, null);
        kDLabelContainer6.setBounds(new Rectangle(263, 262, 200, 19));
        this.add(kDLabelContainer6, null);
        chkSpecify.setBounds(new Rectangle(342, 207, 140, 19));
        this.add(chkSpecify, null);
        //kDLabelContainer1
        kDLabelContainer1.setBoundEditor(cboGroup);
        //kDLabelContainer2
        kDLabelContainer2.setBoundEditor(cboZone);
        //kDLabelContainer3
        kDLabelContainer3.setBoundEditor(txtDays);
        //kDLabelContainer4
        kDLabelContainer4.setBoundEditor(prmtCalendar);
        //kDLabelContainer5
        kDLabelContainer5.setBoundEditor(pkFrom);
        //kDLabelContainer6
        kDLabelContainer6.setBoundEditor(pkTo);

    }


    /**
     * output initUIMenuBarLayout method
     */
    public void initUIMenuBarLayout()
    {

    }

    /**
     * output initUIToolBarLayout method
     */
    public void initUIToolBarLayout()
    {


    }

	//Regiester control's property binding.
	private void registerBindings(){		
	}
	//Regiester UI State
	private void registerUIState(){		
	}
	public String getUIHandlerClassName() {
	    return "com.kingdee.eas.custom.hr.attendance.app.ShiftRulePanelUIHandler";
	}
	public IUIActionPostman prepareInit() {
		IUIActionPostman clientHanlder = super.prepareInit();
		if (clientHanlder != null) {
			RequestContext request = new RequestContext();
    		request.setClassName(getUIHandlerClassName());
			clientHanlder.setRequestContext(request);
		}
		return clientHanlder;
    }
	
	public boolean isPrepareInit() {
    	return false;
    }
    protected void initUIP() {
        super.initUIP();
    }



	
	

    /**
     * output setDataObject method
     */
    public void setDataObject(IObjectValue dataObject)
    {
        IObjectValue ov = dataObject;        	    	
        super.setDataObject(ov);
    }

    /**
     * output loadFields method
     */
    public void loadFields()
    {
        dataBinder.loadFields();
    }
    /**
     * output storeFields method
     */
    public void storeFields()
    {
		dataBinder.storeFields();
    }

	/**
	 * ????????????
	 */
	protected void registerValidator() {
    	getValidateHelper().setCustomValidator( getValidator() );		
	}



    /**
     * output setOprtState method
     */
    public void setOprtState(String oprtType)
    {
        super.setOprtState(oprtType);
    }

    /**
     * output btnAdd_actionPerformed method
     */
    protected void btnAdd_actionPerformed(java.awt.event.ActionEvent e) throws Exception
    {
    }

    /**
     * output btnDel_actionPerformed method
     */
    protected void btnDel_actionPerformed(java.awt.event.ActionEvent e) throws Exception
    {
    }


    /**
     * output getMetaDataPK method
     */
    public IMetaDataPK getMetaDataPK()
    {
        return new MetaDataPK("com.kingdee.eas.custom.hr.attendance.client", "ShiftRulePanelUI");
    }




}